<?php
	require_once( 'core_DataBaseConnect.php' );
	require_once( 'core_ErrorCode.php' );
	require_once( 'core_Response.php' );
	require_once( 'core_FileManager.php' );
	require_once( 'dao_MemberDAO.php' );
	require_once( 'dao_ModelDAO.php' );
	require_once( '_configs.php' );
	
	function func( $con, $post, $returnType )
	{
		$login_member_id 	= $post[ 'login_member_id' ];
		$model_code			= $post[ 'code' ];
		// 0. 작성 권한 설정 ( 최고 관리자 or 운영자 )
		if( MemberDAO::isAccessable( $con, $login_member_id, array( configs::AUTHOR_ADMIN, configs::AUTHOR_MANAGER ) ) == false )
		{
			// 작성권한 없음
			return Response::FAIL( ErrorCode::FAIL_WRITE_AUTHOR, "작성권한이 없습니다.", $returnType );
		}
		
		$response = array();
		
		// 1.1 대표 이미지 삭제 및 업데이트
		// 아래 변수값은 DB 업데이트 이용된다. 삭제될 경우 '' 값으로 설정됨
		$result 			= ModelDAO::selectPicturePath( $con, $model_code );
		$fetch 				= DataBaseConnect::fetch_assoc( $result );
		$toUpdatePicture 	= $fetch[ 'PICTURE' ];	// 원래 이미지 경로값을 가져옴
		if( $post[ 'removePicture' ] != "" || $_FILES[ 'picture' ][ 'name' ] )
		{
			// 삭제
			FileManager::removeSingleFile( configs::FILEUPLOAD_PATH, $toUpdatePicture );
			$toUpdatePicture 	 = '';	// 업데이트에 사용되는 값이므로 삭제
		}
		// 1.2 새 파일 저장
		if( $_FILES[ 'picture' ][ 'name' ] )
		{
			$fileExt	= explode( '.', $_FILES[ 'picture' ][ 'name' ] );	// 파일 확장자
			$result 	= FileManager::uploadSingleFile( configs::FILEUPLOAD_PATH.configs::FILEUPLOAD_MODELFOLDER."$model_code/", 'PICTURE.'.$fileExt[1], $_FILES[ 'picture' ] );
			if( $result )
			{
				$result = substr( $result, strlen( configs::FILEUPLOAD_PATH ) );
				$toUpdatePicture = $result;
			}else{
				
			}
		}
		$response[ 'picture'] = $toUpdatePicture;
		
		// 2.1 기타 썸네일 삭제
		if( $post[ 'removeThumbs' ] != "" )
		{
			$thumbSeqs = explode( "|", $post[ 'removeThumbs' ] );
			foreach( $thumbSeqs as $seq )
			{
				$result 	= ModelDAO::selectThumbPath( $con, $seq );
				$fetch 		= DataBaseConnect::fetch_assoc( $result );
				if( FileManager::removeSingleFile( configs::FILEUPLOAD_PATH, $fetch[ 'LINK' ] ) );
				{
					ModelDAO::deleteThumbPath( $con, $seq );
				}
			}
		}
		// 2.2 새썸네일 저장
		$result 	= FileManager::uploadMultiFiles( configs::FILEUPLOAD_PATH.configs::FILEUPLOAD_MODELFOLDER."$model_code/", 'THUMB_', $_FILES[ 'thumbs' ] );
		$response[ 'thumbs' ] = array();
		$response[ 'thumbs' ][ 'thumb' ] = array();
		$thumbPaths	= array();
		if( count( $result ) > 0 )
		{
			foreach( $result as $k=>$v )
			{
				$thumbPath = substr( $v, strlen( configs::FILEUPLOAD_PATH ) );
				array_push( $response[ 'thumbs' ][ 'thumb' ], $thumbPath );
				array_push( $thumbPaths, $thumbPath );	// 배열에 담기
			}
	
		}else{
			
		}
		$result	= ModelDAO::insertModelThumbs( $con, $model_code, $thumbPaths );
		
		// 3. MODEL 갱신
		$result 		= ModelDAO::updateModel($con, 
												$model_code,
												$post[ 'name' ],
												$toUpdatePicture,
												$post[ 'birthDate' ], 
												$post[ 'birthRegion' ],
												$post[ 'education' ],
												$post[ 'education_memo' ],
												$post[ 'sex' ],
												$post[ 'military' ],
												$post[ 'military_memo' ],
												$post[ 'height' ],
												$post[ 'ref' ],
												$post[ 'ref_license' ] );
		// 7. 응답값 전송
		return Response::SUCCESS( $response, $returnType );
	}
?>